/*
 * 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
 * 
 * 欢迎到知启蒙网站（https://www.zhiqim.com）购买正版软件，知启蒙还提供许多开源框架和软件。
 * 
 * 1、本软件产品所有源代码受《中华人民共和国著作权法》和其他有关法律、法规的保护，其所有知识产权归湖南知启蒙科技有限公司所有；
 * 2、禁止复制和修改。不得复制修改、翻译或改编本软件所有源代码，或者基于本软件产品创作衍生作品；
 * 3、禁止进行逆向工程。不得对本软件的源代码进行逆向工程、反编译或试图以其他方式发现软件的源代码；
 * 4、个别授权：如需进行商业性的销售、复制、分发，包括但不限于软件销售、预装、捆绑等，必须获得知启蒙的书面授权和许可；
 * 5、保留权利：本注释未明示授权的其他一切权利仍归知启蒙所有，任何人使用其他权利时必须获得知启蒙的书面同意。
*/
package net.redxyz.top.dbo.user;

import java.io.Serializable;

import org.zhiqim.kernel.annotation.AnAlias;
import org.zhiqim.kernel.annotation.AnNew;
import org.zhiqim.kernel.json.Jsons;
import org.zhiqim.orm.annotation.*;

/**
 * API错误栈信息链路 对应表《USER_API_ERROR_CHAIN》
 */
@AnAlias("UserApiErrorChain")
@AnNew
@AnTable(table="USER_API_ERROR_CHAIN", key="CHAIN_ID", type="InnoDB")
@AnIndex({@AnIndexValue(name="IX_API_NAME", column="API_NAME", unique=false),
          @AnIndexValue(name="IX_DAY_DATE", column="DAY_DATE", unique=false)})
public class UserApiErrorChain implements Serializable
{
    private static final long serialVersionUID = 1L;

    @AnTableField(column="CHAIN_ID", type="string,128", notNull=true)    private String chainId;    //1.链路ID
    @AnTableField(column="API_NAME", type="string,128", notNull=true)    private String apiName;    //2.API名称
    @AnTableField(column="API_COUNT", type="int", notNull=true)    private int apiCount;    //3.错误次数
    @AnTableField(column="INVOCK_STACK", type="string,2000", notNull=true)    private String invockStack;    //4.线程栈信息
    @AnTableField(column="INVOCK_TYPE", type="int", notNull=true)    private int invockType;    //5.调用位置， 1， http调用，2=task调用 ，0=其他地方调用
    @AnTableField(column="DAY_DATE", type="string,20", notNull=true)    private String dayDate;    //6.创建日期
    @AnTableField(column="SYSTEM_NAME", type="string,64", notNull=false)    private String systemName;    //7.系统程序名

    public String toString()
    {
        return Jsons.toString(this);
    }

    public String getChainId()
    {
        return chainId;
    }

    public void setChainId(String chainId)
    {
        this.chainId = chainId;
    }

    public String getApiName()
    {
        return apiName;
    }

    public void setApiName(String apiName)
    {
        this.apiName = apiName;
    }

    public int getApiCount()
    {
        return apiCount;
    }

    public void setApiCount(int apiCount)
    {
        this.apiCount = apiCount;
    }

    public String getInvockStack()
    {
        return invockStack;
    }

    public void setInvockStack(String invockStack)
    {
        this.invockStack = invockStack;
    }

    public int getInvockType()
    {
        return invockType;
    }

    public void setInvockType(int invockType)
    {
        this.invockType = invockType;
    }

    public String getDayDate()
    {
        return dayDate;
    }

    public void setDayDate(String dayDate)
    {
        this.dayDate = dayDate;
    }

    public String getSystemName()
    {
        return systemName;
    }

    public void setSystemName(String systemName)
    {
        this.systemName = systemName;
    }

}
